# -*- coding: utf-8 -*-
import os
from ddt.excel_ddt import conf
import shutil
import glob
import argparse
if __name__ == '__main__':

    '''
    暂时不传参运行
    # 1.创建解释器
    parser = argparse.ArgumentParser(description="可写可不写，只是在命令行参数出现错误的时候，随着错误信息打印出来。")
    # 2.添加需要的参数
    parser.add_argument('-br', '--br', choices=['gc', 'ff', 'edge', 'ie'])
    # 参数解释
    # -gf 代表短选项，在命令行输入-gf和--girlfriend的效果是一样的，作用是简化参数输入
    # --girlfriend 代表完整的参数名称，可以尽量做到让人见名知意，需要注意的是如果想通过解析后的参数取出该值，必须使用带--的名称
    # choices 代表输入参数的只能是这个choices里面的内容，其他内容则会保错
    # parser.add_argument('--house', type=int, default=0)
    # 参数解释
    # --house 代表参数名称
    # type  代表输入的参数类型，从命令行输入的参数，默认是字符串类型
    # default 代表如果该参数不输入，则会默认使用该值
    # parser.add_argument('food')
    # 参数解释
    # 该种方式则要求必须输入该参数
    # 输入该参数不需要指定参数名称，指定反而报错，解释器会自动将输入的参数赋值给food
    # 3.进行参数解析
    args = parser.parse_args()
    br = args.br
    '''
    # 运行web
    run_file = 'web-yixingyun.xlsx'
    result_file = './report/result-{}'.format(run_file)

    # 根据通配符删除报告文件
    file_list = glob.glob("./report/result*.xml")
    if len(file_list) > 0:
        for file in file_list:
            os.remove(file)
    else:
        pass

    # 将test.py文件名称重置
    file_list = glob.glob(".\\ddt\\test*.py")
    if len(file_list) > 0:
        for file in file_list:
            if file != '.\\ddt\\test.py':
                os.rename(file, '.\\ddt\\test.py')
    else:
        pass
    # if not os.path.exists('./report/result*.xml'):
    #     os.remove('./report/result*.xml')

    # 检查是否存在文件或者文件夹
    if not os.path.exists(result_file):
        pass
    else:
        os.remove(result_file)
    allure_result = "./report/allure-result"
    allure_report = "./report/allure-report"
    if os.path.exists(allure_result):
        shutil.rmtree("./report/allure-result")  # 删除文件夹及其内容
    if os.path.exists(allure_report):
        shutil.rmtree("./report/allure-report")
    # os.system('rd /s/q ./report/allure-result')
    # os.system('rd /s/q ./report/allure-report')
    conf.runCase(case_file='./cases/{}'.format(run_file), res_file=result_file)
    os.system('allure generate ./report/allure-result/ -o ./report/allure-report --clean')








    # 运行app
    # os.remove('./cases/result-app-kaoyan.xlsx')
    # os.system('rd /s/q ./report/allure-result')
    # conf.runCase(case_file='./cases/app-kaoyan.xlsx', res_file='./cases/result-app-kaoyan.xlsx')
    # os.system('allure generate ./report/allure-result/ -o ./report/allure-report --clean')